home *** CD-ROM | disk | FTP | other *** search
/ Java Primer Plus / Java Primer Plus (Waite Group Proess)(1996).iso / chapter8 / aline.java < prev    next >
Text File  |  1995-12-31  |  791b  |  43 lines

  1.     /* ------------ aline class -----------------*/
  2.  
  3.  
  4.     class aline {            // a line class
  5.  
  6.         int x[] = new int[2];    // endpoint x coordinates
  7.         int y[] = new int[2];    // endpoint y coordinates
  8.  
  9.     int rx[] = new int[2];    // rotated endpoint x coordinates
  10.     int ry[] = new int[2];    // rotated endpoint y coordinates
  11.  
  12.     int halfmax; 
  13.  
  14.     public aline (int maxval) {
  15.         
  16.         halfmax = maxval/2;
  17.  
  18.           y[0] = x[0] = (int)(Math.random() * halfmax);
  19.           y[1] = x[1] = -x[0];
  20.  
  21.         }
  22.  
  23.     void rotate (int angle) {
  24.     
  25.         float radangle;
  26.  
  27.         while (angle<0) angle += 360;
  28.         angle = angle%360;
  29.         radangle = angle*0.017453F;
  30.  
  31.         for (int g=0;g<2;++g) {
  32.           rx[g] = (int)(Math.sin(radangle) * x[g]) + halfmax;
  33.           ry[g] = (int)(Math.cos(radangle) * y[g]) + halfmax;
  34.             }
  35.            }
  36.     }
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.